Technical Field
The present invention relates to distributed resource management and more particularly to systems and methods for the lifecycle management of distributed resources.
Description of the Related Art
Independent hosting sites are increasingly supporting virtualization. Virtualization permits running multiple applications and operating systems independently on a single server. Additionally, administrators can quickly move workloads from one virtual workspace to another. This assists in prioritizing application needs while maximizing server resources. The flexibility afforded in the allocation of computing capacity permits consolidation of applications and servers to ease management requirements and expenses.
The independent hosting sites can belong to different administrative domains. These sites can optionally join a federation to access a global state, or they can function independently. A federation is a collection of computers or resources that share a trusted relationship and permit information or resource sharing between sites in the federation. A federation service functions as a security token service. The act of installing the federation service component on a computer makes that computer a federation server.
Virtual software appliances (VSA), which are templatized disk images, are created to enable fast provisioning of software stacks. VSAs can be composed to create a solution deployed across multiple sites. VSAs are aimed to eliminate the installation, configuration and maintenance costs associated with running complex stacks of software. A VSA is a fully pre-installed and pre-configured application and operating system environment. Typically, a VSA will have a web interface to configure the inner workings of the appliance.
A query or request to be handled by accessing a federation of computers results in a solution being determined. A federation layer can provide location-transparency in solution delivery and enable use of global resources. Each solution has an associated dependency graph that maintains the prerequisites for deploying the solution. The solution dependency graph is stored in a service catalog.
Resources could be assigned to host VSAs used by other sites. As resources are provisioned in response to remote/local requests for VSAs, it is critical to manage the lifecycle of these VSAs to avoid resource waste. The current state of the art puts the onus of lifecycle management on system administrators. System administrators are expected to coordinate across the federation to perform lifecycle management of VSAs. Poor lifecycle management of VSAs could lead to resource waste as VSAs could be left active for solutions that are no longer in use.
With the increasing popularity of Service Oriented Architecture (SOA) based approaches for designing and deploying applications, there is a need to manage the lifecycle of composite business applications (CBA) that are mapped across a set of resources in a distributed environment. Lifecycle management involves the process of identifying active components being used by a CBA and reclaiming the resources associated with that component when the CBA is no longer active.
The current state of the art puts the onus of lifecycle management on system administrators. The system administrators are expected to coordinate across the federation to perform lifecycle management of CBAs. The main weakness of these approaches is that they are highly manual and fail to take into account the usage characteristics of the CBA when making lifecycle decisions about the individual components.
In conventional approaches, the lifecycle management approach does not take into account the inter-dependencies of software components within a CBA, and the usage characteristics of the CBA.